﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.IO;

using Products;
using MinhTuan;

public partial class admin_product_Listproduct : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
            String[] admin = Session["Admin"].ToString().Split(',');
            int id = int.Parse(admin[0].ToString());
            if (id < 0)
                Response.Redirect("http://localhost:2011/didong/admin/login.aspx");
        if (!Page.IsPostBack)
        {
            
         
                BindBrand();
                if(opcategory.SelectedIndex!=-1) BindProduct(int.Parse(this.opcategory.SelectedValue.ToString()));
            
        }
    }   
    protected void BindBrand()
    {
        DataTable tbl = Brand.GetBrand();
        this.opcategory.DataSource = tbl;
        this.opcategory.DataBind();
    
    }
    protected void BindProduct(int brand_id)
    {
        DataTable tbl = Product.GetProductByBrandEdit(brand_id);
        this.products.DataSource = tbl;
        this.products.DataBind();
    }
    protected void products_ItemDeleting(object sender, ListViewDeleteEventArgs e)
    {
        ListViewItem item = products.Items[e.ItemIndex];
        if (item != null)
        {
            String[] Item = ((HiddenField)item.FindControl("hdid")).Value.ToString().Split(',');
            bool result;
            result = Product.DeleteProduct(int.Parse(Item[0]));
            if (result == false)
            {
                this.lblError.Text = "Xoá không thành công, Chú ý chỉ xoá được những sản phẩm chưa có khách hàng mua";
            }
            else
            {
                this.lblError.Text = "Xoá thành công";
                BindProduct(int.Parse(this.opcategory.SelectedValue.ToString()));
                
            }
            

        }
    }
    protected void products_ItemUpdating(object sender, ListViewUpdateEventArgs e)
    {
        ListViewItem item = products.Items[e.ItemIndex];
        if (item != null)
        {
            String[] Item = ((HiddenField)item.FindControl("hdid")).Value.ToString().Split(',');
            CheckBox IsHot = (CheckBox)item.FindControl("IsHot");
            CheckBox IsActive = (CheckBox)item.FindControl("IsActive");
            bool Result =Product.UpdateSimple(Convert.ToInt32(Item[0]), IsHot.Checked, IsActive.Checked);
            if (Result == true)
            {
                this.lblError.Text = "Sản phẩm đã được cập nhật";
            }
            else
            {
                this.lblError.Text = "Thông tin chưa được cập nhật";
            }
        }
    }
    protected void products_PagePropertiesChanged(object sender, PagePropertiesChangingEventArgs e)
    {
        DataPager myPager = (DataPager)this.products.FindControl("pager");
        myPager.SetPageProperties(e.StartRowIndex, e.MaximumRows, false);
        Literal PageInfo = (Literal)this.products.FindControl("PageInfo");
        String Prefix = String.Compare("vn", "vn", true) == 0 ? "Xem trang: " : "Views: ";
        int CurrentPage = (e.StartRowIndex / e.MaximumRows) + 1;
        Double totalPage = Math.Ceiling(Convert.ToDouble(myPager.TotalRowCount) / Convert.ToDouble(myPager.PageSize));
        PageInfo.Text = Prefix + CurrentPage + " / " + totalPage;
        BindProduct(int.Parse(opcategory.SelectedValue.ToString()));
    }
    protected void opcategory_SelectedIndexChanged(object sender, EventArgs e)
    {
        BindProduct(int.Parse(this.opcategory.SelectedValue.ToString()));
        this.products.DataBind();
    }
    protected void btnxoa_Click(object sender, EventArgs e)
    {
        Int16 result = Product.DeleteproductNotorder();
        if (result > 0)
        {
            Lbmessage.Text = "có " + result + "Sản phẩm được xoá ";
        }
        else
            Lbmessage.Text = "có 0 sản phẩm được xoá";

    }
}
